<?php
namespace app\admin\controller;

use think\Controller;
//后台首页
class Index extends Common
{
	//入口
    public function index()
    {
		$user=db("staff a")
			->field("a.*,b.name as role_name")
			->join('fr_role b','b.rid=a.role_id','left')
			->where(array('a.sid'=>session('uid')))
			->find();
		session('user',$user);
		//读取用户信息
		if(session('uid')==1 || session('user.role_id')==1){
			//最高级用户
			$menu=db('menu')->where(array('m_status'=>1))->order('m_sort desc')->select();
		}else{
			//其他的管理用户
			$menu=db('menu')->where(array('m_status'=>1,'m_id'=>array('in',session('user.permissions'))))->order("m_sort desc")->select();
			//权限
		}
		$first_permissions=array();//一级权限
		$second_permissions=array();//二级权限
		$all_permissions=array();
		foreach($menu as $k=>$v){
			$all_permissions[]=$v['m_id'];
			//权限数组（后期详细权限管理）
			if($v['m_type']==1){
				$first_permissions[]=$v;
				//一级权限
			}else if($v['m_type']==2){
				$second_permissions[]=$v;
				//二级权限
			}
		}
		session('menu',$all_permissions);//全部权限存入session
		$this->assign('first_permissions',$first_permissions);//一级权限
		$this->assign('second_permissions',$second_permissions);//二级权限
        return $this->view->fetch();
    }
	//首页展示
	public function welcome()
    {
        return $this->view->fetch();
    }
	//修改自己的密码
	function change_pwd(){
		if(Request()->isAjax()){
			//ajax请求
			$data=Request()->post();
			//获取传输数据
			$old_password=$data['old_password'];
			//原密码
			$password1=$data['password1'];
			//新密码1
			$password2=$data['password2'];
			//新密码二
			$check_pwd=check_format($old_password,config('password'));
			//验证密码格式
			if(!$check_pwd){
				//格式错误
				return return_json(array('code'=>201,'msg'=>'原密码是6~20位数字或字母！'));die;
			}
			$check_pwd=check_format($password1,config('password'));
			if(!$check_pwd){
				return return_json(array('code'=>201,'msg'=>'新密码是6~20位数字或字母！'));die;
			}
			if($password1!=$password2){
				return return_json(array('code'=>201,'msg'=>'请确认密码！'));die;
			}
			//原密码和新密码一致
			if($old_password==$password1){
				return return_json(array('code'=>201,'msg'=>'新密码不能和原密码一样'));die;
			}
			$user=db("staff a")
				->where(array('a.sid'=>session('uid')))
				->find();
			//查询用户信息
			if(md5(md5($old_password))!=$user['password']){
				//对比原密码
				return return_json(array('code'=>201,'msg'=>'原密码错误'));die;
			}
			$res=db("staff")->where(array('sid'=>session('uid')))->update(array('password'=>md5(md5($password1))));
			//修改密码
			if($res){
				//成功
				return return_json(array('code'=>200,'msg'=>'密码修改成功'),'修改登录密码');die;
			}else{
				//失败
				return return_json(array('code'=>201,'msg'=>'密码修改失败'),'修改登录密码');die;
			}
			
		}else{
			return $this->fetch();
		}
	}
}
